//
// Created by 孙凌霄 on 2021/6/30.
// 使用反射调用Java工具类

#ifndef ANDROIDAWESOME_JAVACALLHELPER_H
#define ANDROIDAWESOME_JAVACALLHELPER_H

#include <jni.h>

class JavaCallHelper {
public:
    JavaCallHelper(JavaVM *vm, JNIEnv *env, jobject instance);

    ~JavaCallHelper();

    // 回调Java的方法,thread:当前所在线程，子线程、主线程
    void onError(int thread, int errorCode);

    void onPrepare(int thread);

private:
    // 用于在子线程获取JNIEnv
    JavaVM *vm;
    JNIEnv *env;
    jobject instance;

    // 需要反射调用的方法
    jmethodID onErrorId;
    jmethodID onPrepareId;

};


#endif //ANDROIDAWESOME_JAVACALLHELPER_H
